package com.dianxin.smartpark.service.attendance;

import com.chinatelecom.response.common.CommonResponseBody;
import com.dianxin.smartpark.dao.qo.attendance.SmartParkAttendanceGroupQO;
import com.dianxin.smartpark.dao.qo.attendance.SmartParkHolidayDetailQO;
import com.dianxin.smartpark.dao.qo.attendance.SmartParkShiftQO;
import com.dianxin.smartpark.service.vo.attendance.SmartParkAttendanceGroupVO;
import com.dianxin.smartpark.service.vo.attendance.SmartParkHolidayDetailVO;

import java.util.List;

/**
 * @program: smart-park
 * @description: 考勤组管理
 * @author: chenyong
 * @create: 2021-07-29 18:07
 */
public interface SmartParkAttendanceGroupService {

    /**
     * @Description:  分页查询
     * @Author: ChenYong
     * @Date: 2021/7/29 0029
     * @param smartParkAttendanceGroupQO:
     * @Return: CommonResponseBody<List<SmartParkAttendanceGroupVO>>
     */
    CommonResponseBody<List<SmartParkAttendanceGroupVO>> getAttendanceGroups(SmartParkAttendanceGroupQO smartParkAttendanceGroupQO);

    /**
     * @Description:  添加考勤组
     * @Author: ChenYong
     * @Date: 2021/7/29 0029
     * @param smartParkAttendanceGroupQO:
     * @Return: CommonResponseBody
     */
    CommonResponseBody saveAttendanceGroup(SmartParkAttendanceGroupQO smartParkAttendanceGroupQO);

    /**
     * @Description:  修改考勤组
     * @Author: ChenYong
     * @Date: 2021/7/29 0029
     * @param smartParkAttendanceGroupQO:
     * @Return: CommonResponseBody
     */
    CommonResponseBody updateAttendanceGroup(SmartParkAttendanceGroupQO smartParkAttendanceGroupQO);

    /**
     * @Description:  删除考勤组
     * @Author: ChenYong
     * @Date: 2021/7/29 0029
     * @param ids:
     * @Return: CommonResponseBody
     */
    CommonResponseBody deleteAttendanceGroup(Long[] ids);

    /**
     * @Description:  查询详情
     * @Author: ChenYong
     * @Date: 2021/7/30 0030
     * @param smartParkAttendanceGroupQO:
     * @Return: CommonResponseBody
     */
    CommonResponseBody attendanceGroupDetails(SmartParkAttendanceGroupQO smartParkAttendanceGroupQO);

    /**
     * 根据userID查询考勤组
     * @Description:  根据userID查询考勤组
     * @Author: ChenYong
     * @Date: 2021/9/2 0002
     * @param smartParkAttendanceGroupQO:
     * @Return: CommonResponseBody
     */
    CommonResponseBody getAttendanceGroupByUserId(SmartParkAttendanceGroupQO smartParkAttendanceGroupQO);

}
